#ifndef EYAS_CORE_THREAD_BLOCKTHREAD_H_
#define EYAS_CORE_THREAD_BLOCKTHREAD_H_
#include <boost/noncopyable.hpp>
#include <boost/thread/thread.hpp>

#include "conf/def.h"

namespace eyas {
namespace thread {

class EYAS_THREAD_API blocked_thread : public boost::noncopyable {
public:
	template<typename F, typename... Args>
	blocked_thread(F threadFunc, Args... args);
	virtual ~blocked_thread() = default;
};

template<typename F, typename... Args>
blocked_thread::blocked_thread(F threadFunc, Args... args){
	boost::thread th(threadFunc, args...);
	th.join();
}

}
}

#endif
